The field of the invention relates, in general, to automatic call distribution (ACD) systems, and in particular to an improved real time status updating of incoming customer contacts (calls) to an ACD.
ACD systems typically route incoming customer contacts such as telephone calls to available servicing agents. In many existing systems, the distribution process utilized by such ACD systems concentrates on making agents available to handle customer contacts in a standard first-in first-out scheme. In modern ACD's, the “calls” may be any appropriate type of customer contact including but not limited to conventional telephone calls, emails, facsimiles, VOIP (Voice Over Internet Protocol), other internet or web contacts, etc. . .
Another important characteristic of some ACD systems is to keep track of information concerning each incoming call, such as the corresponding call-answer waiting time. Such status information must be made available to the ACD system controller for all incoming calls on a continuing basis.
An ACD may be integrated or distributed including a single controller/switch, separate controller (e.g. a PC) running software to control a switch or any other combination hardware and/or software which provides the functionality of an Automatic Call Distribution System. Often, in today's ACD systems, an ACD system controller is made aware of the status of all current calls using a variety of known techniques, for example, via either event-driven updates or periodic updates. Event-driven updates can be very taxing on most systems, as they require excessive processing time during heavy traffic of incoming calls. Periodic updates designed to report on calls answered during a long specific time window are rarely considered timely. The periodic pace at which these updates are sent to the ACD system controller can potentially render them out-of-date, since they are designed to provide status information about calls received during set logging periods.
One major goal of some automatic call distribution systems is to optimize status information of incoming calls to the system controller to potentially maximize the performance of the ACD. One such important status information value has been the speed of answer of all calls queued during a set time period. An average speed of answer developed for real-time display was implemented as an average across a specific logging period. This average speed of answer technique falls within the periodic updating scheme.
It is not uncommon to observe traffic bursts of incoming calls during a certain logging period. Such temporary traffic peaks render the average speed of answer values quite inaccurate and unreliable. Therefore, this average speed of answer value is often not as informative as required for the smooth operation of the ACD system. Improvements to the accuracy of such average speed of answer value permit improved predictions of call volumes as well as call waiting/handling times based on stored system history. These improved predictions can translate into better management of the workforce as the allocation and scheduling of call handlers can be programmed to better meet the needs of the ACD at specific time periods.
One embodiment of an improved method for automatically updating a “Real Time” Average Speed of Answer (RASA) for a number of calls received by an automatic call distributor (ACD) during a set interval provide an average speed of answer determined across a sliding time window using moving averages and exponential smoothing. One embodiment of the method includes the steps of computing a current average speed of answer, SA, for the number of calls received by the ACD during the set time interval, by dividing total waiting time to answer for these calls by the number of calls and scaling the current SA by a weight factor W, and updating the real time average speed of answer, RASA, by scaling a previous RASA by the unity complement to W, i.e. (1−W), and augmenting it by the scaled current SA.